import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class ProgressBar {
    public static void printPrigressBar(int n, List<int[]> changes){
        double increment = 1.0 / n;
        double progress = 0.0;
        int changeIndex = 0;
        for (int i = 0; i <= n; i++) {
            //遇到变速点
            if(changeIndex < changes.size() &&
                i == changes.get(changeIndex)[0]){
                //现在要求 m 帧走完全程
                int m = changes.get(changeIndex)[1];
                n = m;
                increment = (double) (1 - progress) / (n - i);
                changeIndex++;
            }
            System.out.printf("此时进度是 %.2f，速度为 %.2f"
                    ,progress,increment);
            System.out.println();
            progress += increment;
            progress = Math.min(progress,1.0);
        }
    }

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        // 读取输入
        int n = scanner.nextInt(); // 预计第n帧到1
        int k = scanner.nextInt(); // 变速点数量

        List<int[]> changes = new ArrayList<>();
        for (int i = 0; i < k; i++) {
            int t = scanner.nextInt();
            int m = scanner.nextInt();
            changes.add(new int[]{t, m});
        }

        scanner.close();

        printPrigressBar(n, changes);
    }
}
